Microdevices, such as integrated microcircuits and microelectromechanical systems (MEMS), are used in a variety of products, from automobiles to microwaves to personal computers. Designing and fabricating microdevices typically involves many steps, known as a “design flow.” The particular steps of a design flow often are dependent upon the type of microcircuit, its complexity, the design team, and the microdevice fabricator or foundry that will manufacture the microcircuit. Typically, software and hardware “tools” verify the design at various stages of the design flow by running software simulators and/or hardware emulators, and errors in the design are corrected or the design is otherwise improved.
Several steps are common to most design flows for integrated microcircuits. Initially, the specification for a new circuit is transformed into a logical design, sometimes referred to as a register transfer level (RTL) description of the circuit. The logic of the circuit is then analyzed, to confirm that it will accurately perform the functions desired for the circuit. This analysis is sometimes referred to as “functional verification.” After the accuracy of the logical design is confirmed, it is converted into a device design by synthesis software. The device design, which is typically in the form of a schematic or netlist, describes the specific electronic devices (such as transistors, resistors, and capacitors) that will be used in the circuit, along with their interconnections. Preliminary timing estimates for portions of the circuit may be made at this stage, using an assumed characteristic speed for each device. In addition, the relationships between the electronic devices are analyzed, to confirm that the circuit described by the device design will correctly perform the desired functions. This analysis is sometimes referred to as “formal verification.”
Once the relationships between circuit devices have been established, the design is again transformed, this time into a physical design that describes specific geometric elements and their interconnections. This type of design often is referred to as a “layout” design. Typically, a designer will perform a number of analyses on the layout design data. For example, with integrated circuits, a designer may analyze the layout design to confirm that it accurately represents the circuit devices and their relationships as described in the device design. A design also may analyze the layout design to confirm that it complies with various design requirements or recommendations, such as the use of minimum spacings between geometric elements or one or more resolution enhancement technique (RET) processes. After the layout design has been finalized, it is converted into a format that can be employed by a mask or reticle writing tool to create a mask or reticle for use in a photolithographic manufacturing process. The written masks or reticles then can be used in a photolithographic process to expose selected areas of a wafer to light or other radiation in order to produce the desired integrated microdevice structures on the wafer.
While a variety of electronic design automation tools are required to create a modern microdevice, it is often difficult for a designer to select any particular electronic design automation tool for use. Many electronic design automation tools are relatively expensive. A single licensed copy or “seat” of a layout design verification tool, for example, may cost more than the salary for several design engineers. Along with its expense, a designer must consider the suitability of a particular electronic design automation tool for its intended purpose. For example, a particular formal verification tool may be capable of identifying faults in a given circuit that other, seemingly equivalent, formal verification tools will miss. In some instances, a designer may identify an electronic design automation tool that is suitable for addressing a specific problem, but the problem may not occur often enough to justify the expense of that particular electronic design automation tool.
Accordingly, a designer or manufacturer will try to thoroughly evaluate an electronic design automation tool before its purchase. This type of evaluation is not trivial, however. Because of the value of electronic design automation tools and the risk of copying, some electronic design automation tool vendors are reluctant to provide tools for unrestricted evaluation at a customer's work site. Similarly, many customers are reluctant to evaluate confidential and proprietary designs at a vendor's work site, which may be accessible to competitors.
Even after a designer or manufacturer has purchased an electronic design automation tool, its complexity may make training for the tool difficult. For example, an electronic design automation tool vendor may need to spend several days teaching a design engineer how to use a particular electronic design automation tool. Teaching several design engineers in disparate locations thus may require a substantial investment of time and teaching resources. Even if all of the engineers are taught simultaneously using teleconferencing equipment, their computers must be similarly configured at each of the different locations.